As Dec. 31, 1999 turns into Jan. 1, 2000, a man-made phenomenon having the potential of malfunctioning a majority of the world's microprocessors will occur. This occurrence is known as "the Year 2000 Problem," "Y2K" and "the Millennium Bug." In essence, many computers that process date data may either stop working or produce inaccurate results.
Basically, the Year 2000 Problem stems from a simple memory saving trick where programmers dropped the first two number of the date to save a byte of memory. For example, the year 1962 would be abbreviated to "62". Although with today massive memory devices saving a mere byte of data is insignificant, the practice began when every byte of computer storage was precious.
When the year 1999, abbreviated as "99", ends, and the year 2000, abbreviated as "00", begins, most of the world's software will be confused. For example, since the number "00" has a value less than the number "99", many computer programs will interpret the date as the year 1900.
The Year 2000 Problem will affect everything from power companies, modern automobiles, and weapon systems to banks, governmental offices, as well as large and small businesses throughout the world. As governments and companies began to realize the magnitude of this problem, thousands of computer consultants have been hired to fix the Year 2000 Problem. It has been estimated that the costs for fixing the Year 2000 Problem may exceed one trillion dollars.
One prior art solution for the Year 2000 Problem is found in U.S. Pat. No. 5,600,836 to Alter. This prior art reference proposes subtracting 20 or more years (e.g., 28 years) from all of the dates stored in the data files. Accordingly, the year 2000 would appear as the year 1972. However, although this solution may work if all of the date data is converted, it is dangerous to modify such raw data. This is true since it is difficult to ascertain what is date data vis-a-vis other type of data. For example, other numerical data, stored with date data in the data files, may be modified by subtracting 28 from it. One can imagine the catastrophic problems that can occur in such a situation.
It is therefore an object of the present invention to provide a solution to the Year 2000 Problem that is efficient in operation, without modifying previously stored date data.
It is a further object of the present invention to analyze and, if necessary, modify the source code representing date fields in an application program which processes the date data.
It is another object of the present invention to analyze and modify a target application program without affecting (i.e. freezing) the remaining system that contains numerous other application programs and data files.
Various other objects, advantages and features of the present invention will become readily apparent from the ensuing detailed description and the novel features which would be particularly pointed out in the appended claims.